package com.ruoyi.system.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

import java.util.ArrayList;
import java.util.List;


/**
 * 小程序菜单对象 xcx_menu
 *
 * @author ruoyi
 * @date 2022-12-29
 */
public class XcxMenu extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long xcxMenuId;

    /** 菜单名称 */
    @Excel(name = "菜单名称")
    private String name;

    /** 父菜单ID */
    @Excel(name = "父菜单ID")
    private Long xcxMenuTopid;

    /** 顺序 */
    @Excel(name = "顺序")
    private Long orderNumber;

    /** 菜单类型（M其他DOM C菜单 F按钮） */
    @Excel(name = "菜单类型", readConverterExp = "M=其他DOM,C=菜单,F=按钮")
    private String menuType;

    /** 组件路径 */
    @Excel(name = "组件路径")
    private String path;

    /** 组件参数 */
    @Excel(name = "组件参数")
    private String query;

    /** 菜单标识 */
    @Excel(name = "菜单标识")
    private String menuId;

    /** 权限标识 */
    @Excel(name = "权限标识")
    private String authId;

    /** 是否为外链 */
    @Excel(name = "是否为外链")
    private String isFrame;

    /** 外链地址 */
    @Excel(name = "外链地址")
    private String componentUrl;

    /** 是否冻结 */
    @Excel(name = "是否冻结")
    private String freezeS;

    /** 是否删除 */
    @Excel(name = "是否删除")
    private String deleteS;

    /** 创建时间 */
    @Excel(name = "创建时间")
    private String createData;

    @Override
    public String toString() {
        return "XcxMenu{" +
                "xcxMenuId=" + xcxMenuId +
                ", name='" + name + '\'' +
                ", xcxMenuTopid=" + xcxMenuTopid +
                ", orderNumber=" + orderNumber +
                ", menuType='" + menuType + '\'' +
                ", path='" + path + '\'' +
                ", query='" + query + '\'' +
                ", menuId=" + menuId +
                ", isFrame='" + isFrame + '\'' +
                ", componentUrl='" + componentUrl + '\'' +
                ", freezeS='" + freezeS + '\'' +
                ", deleteS='" + deleteS + '\'' +
                ", createData='" + createData + '\'' +
                ", children=" + children +
                '}';
    }

    public String getAuthId() {
        return authId;
    }

    public void setAuthId(String authId) {
        this.authId = authId;
    }

    public void setChildren(List<XcxMenu> children) {
        this.children = children;
    }

    public List<XcxMenu> getChildren() {
        return children;
    }

    /** 子菜单 */
    private List<XcxMenu> children = new ArrayList<XcxMenu>();

    public void setXcxMenuId(Long xcxMenuId)
    {
        this.xcxMenuId = xcxMenuId;
    }

    public Long getXcxMenuId()
    {
        return xcxMenuId;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setXcxMenuTopid(Long xcxMenuTopid)
    {
        this.xcxMenuTopid = xcxMenuTopid;
    }

    public Long getXcxMenuTopid()
    {
        return xcxMenuTopid;
    }
    public void setOrderNumber(Long orderNumber)
    {
        this.orderNumber = orderNumber;
    }

    public Long getOrderNumber()
    {
        return orderNumber;
    }
    public void setMenuType(String menuType)
    {
        this.menuType = menuType;
    }

    public String getMenuType()
    {
        return menuType;
    }
    public void setPath(String path)
    {
        this.path = path;
    }

    public String getPath()
    {
        return path;
    }
    public void setQuery(String query)
    {
        this.query = query;
    }

    public String getQuery()
    {
        return query;
    }
    public void setMenuId(String menuId)
    {
        this.menuId = menuId;
    }

    public String getMenuId()
    {
        return menuId;
    }
    public void setIsFrame(String isFrame)
    {
        this.isFrame = isFrame;
    }

    public String getIsFrame()
    {
        return isFrame;
    }
    public void setComponentUrl(String componentUrl)
    {
        this.componentUrl = componentUrl;
    }

    public String getComponentUrl()
    {
        return componentUrl;
    }
    public void setFreezeS(String freezeS)
    {
        this.freezeS = freezeS;
    }

    public String getFreezeS()
    {
        return freezeS;
    }
    public void setDeleteS(String deleteS)
    {
        this.deleteS = deleteS;
    }

    public String getDeleteS()
    {
        return deleteS;
    }
    public void setCreateData(String createData)
    {
        this.createData = createData;
    }

    public String getCreateData()
    {
        return createData;
    }

}
